﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace Stuff
{
    public partial class StuffListDevide : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                ZWL.Common.PublicMethod.CheckSession();
                DataBindToGridview();
                //设定按钮权限            
                //ImageButton1.Visible = ZWL.Common.PublicMethod.StrIFIn("|A017A|", ZWL.Common.PublicMethod.GetSessionValue("QuanXian"));
                ImageButton5.Visible = ZWL.Common.PublicMethod.StrIFIn("|A017M|", ZWL.Common.PublicMethod.GetSessionValue("QuanXian"));
                ImageButton3.Visible = ZWL.Common.PublicMethod.StrIFIn("|A017D|", ZWL.Common.PublicMethod.GetSessionValue("QuanXian"));
                ImageButton2.Visible = ZWL.Common.PublicMethod.StrIFIn("|A017E|", ZWL.Common.PublicMethod.GetSessionValue("QuanXian"));
            }
        }
        public void DataBindToGridview()
        {
            ZWL.BLL.StuffModel MyModel = new ZWL.BLL.StuffModel();
            string planId = Request.QueryString["planId"];

            string sql = " StuffPlanId= " + planId + " ";

            string str_cgfs = this.ddl_cgfs.SelectedValue.Trim();

            if (str_cgfs != "全部")
            {
                sql += " and CaiGouFangshi='" + str_cgfs + "'";

            }

            DataSet ds = MyModel.GetList(sql);
            GVData.DataSource = ds;
            GVData.DataBind();
            if (str_cgfs == "甲供")
            {
                GVData.Columns[2].Visible = true;
            }
            else
            {
                GVData.Columns[2].Visible = false;
            }
            for (int i = 0; i <= GVData.Rows.Count - 1; i++)
            {
                DataRowView mydrv = ds.Tables[0].DefaultView[i];

                string cgfs = mydrv["CaiGouFangshi"].ToString().Trim();

                DropDownList ddl = (DropDownList)GVData.Rows[i].FindControl("ddl_devide");
                ddl.SelectedValue = cgfs;

            }

            LabPageSum.Text = Convert.ToString(GVData.PageCount);
            LabCurrentPage.Text = Convert.ToString(((int)GVData.PageIndex + 1));
            this.GoPage.Text = LabCurrentPage.Text.ToString();
        }
        #region  分页方法
        protected void ButtonGo_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                if (GoPage.Text.Trim().ToString() == "")
                {
                    Response.Write("<script language='javascript'>alert('页码不可以为空!');</script>");
                }
                else if (GoPage.Text.Trim().ToString() == "0" || Convert.ToInt32(GoPage.Text.Trim().ToString()) > GVData.PageCount)
                {
                    Response.Write("<script language='javascript'>alert('页码不是一个有效值!');</script>");
                }
                else if (GoPage.Text.Trim() != "")
                {
                    int PageI = Int32.Parse(GoPage.Text.Trim()) - 1;
                    if (PageI >= 0 && PageI < (GVData.PageCount))
                    {
                        GVData.PageIndex = PageI;
                    }
                }

                if (TxtPageSize.Text.Trim().ToString() == "")
                {
                    Response.Write("<script language='javascript'>alert('每页显示行数不可以为空!');</script>");
                }
                else if (TxtPageSize.Text.Trim().ToString() == "0")
                {
                    Response.Write("<script language='javascript'>alert('每页显示行数不是一个有效值!');</script>");
                }
                else if (TxtPageSize.Text.Trim() != "")
                {
                    try
                    {
                        int MyPageSize = int.Parse(TxtPageSize.Text.ToString().Trim());
                        this.GVData.PageSize = MyPageSize;
                    }
                    catch
                    {
                        Response.Write("<script language='javascript'>alert('每页显示行数不是一个有效值!');</script>");
                    }
                }

                DataBindToGridview();
            }
            catch
            {
                DataBindToGridview();
                Response.Write("<script language='javascript'>alert('请输入有效数字！');</script>");
            }
        }
        protected void PagerButtonClick(object sender, ImageClickEventArgs e)
        {
            //获得Button的参数值
            string arg = ((ImageButton)sender).CommandName.ToString();
            switch (arg)
            {
                case ("Next"):
                    if (this.GVData.PageIndex < (GVData.PageCount - 1))
                        GVData.PageIndex++;
                    break;
                case ("Pre"):
                    if (GVData.PageIndex > 0)
                        GVData.PageIndex--;
                    break;
                case ("Last"):
                    try
                    {
                        GVData.PageIndex = (GVData.PageCount - 1);
                    }
                    catch
                    {
                        GVData.PageIndex = 0;
                    }

                    break;
                default:
                    //本页值
                    GVData.PageIndex = 0;
                    break;
            }
            DataBindToGridview();
        }
        #endregion
        protected void GVData_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            ZWL.Common.PublicMethod.GridViewRowDataBound(e);
        }
        protected void ImageButton4_Click(object sender, ImageClickEventArgs e)
        {
            DataBindToGridview();
        }
        protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("BuyChanPinAdd.aspx?OrderName=" + Request.QueryString["OrderName"].ToString());
        }
        protected void ImageButton3_Click(object sender, ImageClickEventArgs e)
        {
            string IDlist = ZWL.Common.PublicMethod.CheckCbx(this.GVData, "CheckSelect", "LabVisible");
            if (ZWL.DBUtility.DbHelperSQL.ExecuteSQL("delete from stuff where ID in (" + IDlist + ")") == -1)
            {
                Response.Write("<script>alert('删除选中记录时发生错误！请重新登陆后重试！');</script>");
            }
            else
            {
                DataBindToGridview();
                //写系统日志
                ZWL.BLL.ERPRiZhi MyRiZhi = new ZWL.BLL.ERPRiZhi();
                MyRiZhi.UserName = ZWL.Common.PublicMethod.GetSessionValue("UserName");
                MyRiZhi.DoSomething = "用户删除物资记录信息";
                MyRiZhi.IpStr = System.Web.HttpContext.Current.Request.UserHostAddress.ToString();
                MyRiZhi.Add();
            }
        }
        protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
        {
            string IDList = "-1 ";
            for (int i = 0; i < GVData.Rows.Count; i++)
            {
                Label LabVis = (Label)GVData.Rows[i].FindControl("LabVisible");
                IDList = IDList + "," + LabVis.Text.ToString();
            }
            Hashtable MyTable = new Hashtable();
            MyTable.Add("StuffNameModel", "产品名称");
            MyTable.Add("JiLiangUnit", "计量单位");
            MyTable.Add("PlanNumber", "计划数量");
            MyTable.Add("GaiSuanPrice", "概算价格");
            MyTable.Add("JiShuCanShu", "技术参数");//
            MyTable.Add("CaiGouFangshi", "采购方式");

            ZWL.Common.DataToExcel.GridViewToExcel(ZWL.DBUtility.DbHelperSQL.GetDataSet("select StuffNameModel,JiLiangUnit,PlanNumber,GaiSuanPrice,JiShuCanShu,CaiGouFangshi from stuff where ID in (" + IDList + ") order by ID desc"), MyTable, "Excel报表");
        }


        //提交修改
        protected void ImageButton5_Click(object sender, ImageClickEventArgs e)
        {
            for (int i = 0; i < GVData.Rows.Count; i++)
            {
                GridViewRow row = GVData.Rows[i];
                Label LabVis = (Label)row.FindControl("LabVisible");
                string strItemId = LabVis.Text.ToString();//ShengPiNumber

                DropDownList ddl_devide = (DropDownList)row.FindControl("ddl_devide");
                string method = ddl_devide.SelectedValue;

                ZWL.DBUtility.DbHelperSQL.ExecuteSQL("update stuff set CaiGouFangshi= '" + method + "' where id =" + strItemId);

                //   ZWL.BLL.StuffModel MyModel = new ZWL.BLL.StuffModel();
                //   MyModel.GetModel(int.Parse( strItemId));
                //   MyModel.ShengPiNumber = int.Parse(strSpNumber);
                //   MyModel.ShengPiPrice = float.Parse(strSpPrice);
                //   MyModel.Update();

            }
        }
    }
}